/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package controleur;

import ia_multiagent1.Agent;
import java.awt.Point;
import java.util.Vector;
import javax.swing.JFrame;
import javax.swing.JOptionPane;
import javax.swing.JTextField;
import vue.JPanelHistogramme;

/**
 *
 * @author Baptiste
 */
public class RunHistogramme implements Runnable{
    
    private Vector<Agent> agents;
    private JTextField txt;

    public RunHistogramme(Vector<Agent> agents, JTextField txt){
        this.agents = agents;
        this.txt = txt;
    }
    
    public void run() {
        // Histogramme des ressources rencontrées
        JFrame jf = new JFrame();
        jf.setSize(250, 450);  
        try{
        Agent agent = agents.elementAt(Integer.parseInt(txt.getText())-1);
        JPanelHistogramme content = new JPanelHistogramme(agent.getBucketR1(), agent.getBucketR2(), agent.getBucketR3());
        jf.setContentPane(content);
        jf.setTitle("Histogramme des ressources rencontrées");
        jf.setVisible(true);
        
        //Histogramme des temps moyens sans rencontrer de ressource
        JFrame jf2 = new JFrame();
        jf2.setLocation(new Point(250,0));
        jf2.setSize(250, 450);
        JPanelHistogramme content2 = new JPanelHistogramme(agent.AverageTimeWithoutMeetingRessource(1), agent.AverageTimeWithoutMeetingRessource(2), agent.AverageTimeWithoutMeetingRessource(3));
        jf2.setContentPane(content2);
        jf2.setTitle("Histogramme des temps entre deux ressources de même type");
        jf2.setVisible(true);
        }
        catch(java.lang.NumberFormatException ne){
            JOptionPane.showMessageDialog(null, "Veuillez remplir ce champs... avec un nombreentier, et pas trop grand !", "Erreur evitee.. qui aurait pu être grave", JOptionPane.ERROR_MESSAGE);
        }
        catch(java.lang.ArrayIndexOutOfBoundsException ne){
            JOptionPane.showMessageDialog(null, "Veuillez remplir ce champs... avec un nombreentier, et pas trop grand !", "Erreur evitee.. qui aurait pu être grave", JOptionPane.ERROR_MESSAGE);

        }
    }

}
